package com.ionehe.group.common.uaa.ex.dto;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * Copyright (c) 2020 ionehe.com
 * Date: 2020/11/27 0027
 * Time: 17:15
 *
 * @author 2020年 <a href="mailto:a@ionehe.com">秀</a>
 */
@Data
public class CustomerInfoListDTO implements Serializable {
    /**
     * 主键
     */
    @ApiModelProperty("主键")
    private Long id;
    /**
     * 父id
     */
    @ApiModelProperty("父id")
    private Long pid;
    /**
     * 类型，详情请见data_item表organizationType
     */
    @ApiModelProperty("类型，详情请见data_item表organizationType")
    private String type;
    /**
     * 公司名称
     */
    @ApiModelProperty("公司名称")
    private String name;
    /**
     * 所属行业
     */
    @ApiModelProperty("所属行业")
    private String industry;
    /**
     * 统一社会信用代码
     */
    @ApiModelProperty("统一社会信用代码")
    private String socialCreditCode;
    /**
     * 股票代码
     */
    @ApiModelProperty("股票代码")
    private String stockCode;
    /**
     * 地点
     */
    @ApiModelProperty("地点")
    private String address;
    /**
     * 注册资本
     */
    @ApiModelProperty("注册资本")
    private Integer registeredCapital;
    /**
     * 法人姓名
     */
    @ApiModelProperty("法人姓名")
    private String legalPersonName;
    /**
     * 法人身份证
     */
    @ApiModelProperty("法人身份证")
    private String legalPersonIdCard;
    /**
     * 邮箱
     */
    @ApiModelProperty("邮箱")
    private String email;
    /**
     * 联系人姓名
     */
    @ApiModelProperty("联系人姓名")
    private String contactName;
    /**
     * 联系人手机号
     */
    @ApiModelProperty("联系人手机号")
    private String contactPhone;
    /**
     * 营业执照
     */
    @ApiModelProperty("营业执照")
    private String businessLicenseResources;
    /**
     * 股东结构（格式为图片）
     */
    @ApiModelProperty("股东结构（格式为图片）")
    private String shareholderStructure;
    /**
     * 融资需求额度
     */
    @ApiModelProperty("融资需求额度")
    private Integer financingNeedsAmount;
    /**
     * 近期年收入
     */
    @ApiModelProperty("近期年收入")
    private Integer annualIncome;
    /**
     * 简介
     */
    @ApiModelProperty("简介")
    private String introduction;
    /**
     * 套餐id
     */
    @ApiModelProperty(value = "套餐id")
    private Long setMealId;
    /**
     * 账户
     */
    @ApiModelProperty(value = "管理员账号")
    private String account;
    /**
     * 密码(不填写，默认为【账号@hello】)
     */
    @ApiModelProperty(value = "密码(不填写，默认为【账号@hello】)")
    private String password;
    /**
     * 套餐名称
     */
    @ApiModelProperty("套餐名称")
    private String setMealName;
    /**
     * 超时时间
     */
    @ApiModelProperty("超时时间")
    private Long timeout;
    /**
     * 最近一次登陆时间
     */
    @ApiModelProperty("最近一次登陆时间")
    private Date lastLoginTime;
    /**
     * 信用评级（1AAA，2AA，3A，4BBB，5BB，6B，7CCC，8CC，9C）
     */
    @ApiModelProperty("信用评级（1AAA，2AA，3A，4BBB，5BB，6B，7CCC，8CC，9C）")
    @JsonSerialize(using = ToStringSerializer.class)
    private Integer creditRating;
    /**
     * 评级时间
     */
    @ApiModelProperty("评级时间")
    private Date ratingTime;
    /**
     * 扩展信息
     */
    @ApiModelProperty("扩展信息")
    private String extra;
    /**
     * 是否删除（删除1，不删除0）
     */
    @ApiModelProperty("是否删除（删除1，不删除0）")
    private Integer isDelete;
    /**
     * 修改时间
     */
    @ApiModelProperty("修改时间")
    private Date updateTime;
    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private Date createTime;
    /**
     * 额外信息
     */
    @ApiModelProperty(value = "额外信息")
    private Map<String, Object> extraMap;
    /**
     * 是否可申请授权
     */
    @ApiModelProperty(value = "是否可申请授权（0不可以 1可以）")
    private Integer isAuthorization;
    /**
     * 附件
     */
    private List<AttachmentDTO> attachmentList;
    /**
     * 评级生成的报告id
     */
    @ApiModelProperty("评级生成的报告id")
    private Long reportId;
}
